<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"            
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">
        <ui:define name="contenido">             
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">                                
                <p:panel id="pnlPrincipal" header="#{i18n['requerimiento.titulo']}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid id="pgFormFilter" columns="12" cellpadding="4">                        
                        <h:outputLabel value="#{i18n['general.label.id']}" styleClass="label"/>
                        <p:inputText value="#{requerimientoMBean.dtoFiltro.id}" onkeypress="return fn_validaTecla('entero',this)"
                                     styleClass="txtCampo" size="10">
                            <f:validateLongRange minimum="0" maximum="999999" />
                        </p:inputText>

                        <h:outputLabel value="#{i18n['requerimiento.label.descripcion']}" styleClass="label"/>
                        <p:inputText label="#{i18n['requerimiento.label.descripcion']}" 
                                     value="#{requerimientoMBean.dtoFiltro.descripcion}"                                      
                                     size="50" styleClass="txtCampo">
                            <f:validateLength maximum="100" minimum="0" />
                        </p:inputText>

                        <h:outputLabel styleClass="label" value="#{i18n['requerimiento.label.sede']}"/>                    
                        <p:selectOneMenu value="#{requerimientoMBean.dtoFiltro.sedeDto}"  converter="parametroConvert"                                 
                                         style="#{applicationMBean.estiloObligatorio}">
                            <f:selectItems value="#{requerimientoMBean.listaSedesFiltro}" var="parametroDto" itemLabel="#{parametroDto.descripcion}" itemValue="#{parametroDto}" />                        
                        </p:selectOneMenu>

                        <h:outputLabel styleClass="label" value="#{i18n['requerimiento.label.estado']}"/>                                      
                        <p:selectOneMenu value="#{requerimientoMBean.dtoFiltro.estadoDto}"  converter="parametroConvert"                              
                                         style="#{applicationMBean.estiloObligatorio}">
                            <f:selectItems value="#{requerimientoMBean.listaEstadosRequerimientoFiltro}" var="parametroDto" itemLabel="#{parametroDto.descripcion}" itemValue="#{parametroDto}" />                        
                        </p:selectOneMenu>

                        <p:spacer width="10" />
                        <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.buscar.filtro.tip']}" accesskey="#{applicationMBean.keyBuscar}"
                                         value="#{i18n['general.button.buscar.filtro']}" ajax="false" 
                                         style="#{applicationMBean.cssBotonBusqueda}"
                                         actionListener="#{requerimientoMBean.buscar}">
                            <f:ajax  render="pnlTabla pgFormFilter"/>
                        </p:commandButton>  
                        <p:spacer width="10" />
                        <h:outputText  value="#{requerimientoMBean.lista.size()} #{i18n['form.general.mensaje.cantidad.encontrada']}" styleClass="mensaje" rendered="#{requerimientoMBean.lista!=null}"/>       
                    </h:panelGrid>
                </p:panel>
                <p:panel id="pnlTabla" header="#{i18n['general.panel.titulo.busqueda.resultado']}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid columns="1">
                        <p:dataTable id="tblPrincipal" value="#{requerimientoMBean.lista}" var="dto"
                                     selection="#{requerimientoMBean.dto}" selectionMode="single" rowKey="#{dto.id}"
                                     emptyMessage="#{i18n['form.general.mensaje.no.registros']}" styleClass="estiloPanel"                              
                                     paginator="true" rows="#{sessionMBean.cantidadRegistros}"  widgetVar="widTable">                        
                            <p:column style="text-align:center;">
                                <h:panelGrid id="pgBotonesGrilla" columns="10" cellspacing="10" styleClass="estiloPanelGrid">
                                    <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                     action="#{requerimientoMBean.ver}" ajax="false" rendered="#{sessionMBean.privilegiosOpciones['254']=='true'}">
                                        <f:setPropertyActionListener value="#{dto}" target="#{requerimientoMBean.dto}" />                                                                    
                                    </p:commandButton>

                                    <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}"
                                                     action="#{requerimientoMBean.editar}" ajax="false"
                                                     rendered="#{sessionMBean.privilegiosOpciones['253']=='true'}">
                                        <f:setPropertyActionListener value="#{dto}" target="#{requerimientoMBean.dto}" />                                                                    
                                    </p:commandButton>
                                </h:panelGrid>
                            </p:column>
                            <p:column headerText="#{i18n['general.label.id']}"  style="text-align:center;">
                                <h:outputText value="#{dto.id}" styleClass="txtCampo" />
                            </p:column>
                            <p:column headerText="#{i18n['requerimiento.label.descripcion']}">
                                <h:outputText value="#{dto.descripcion}" styleClass="txtCampo" />
                            </p:column>
                            <p:column headerText="#{i18n['requerimiento.label.puesto']}" >
                                <h:outputText value="#{dto.puestoDto.descripcion}" styleClass="txtCampo" />
                            </p:column>   
                            <p:column headerText="#{i18n['requerimiento.label.num_vacantes']}" rendered="false" >
                                <h:outputText value="#{dto.numeroVacantes}" styleClass="txtCampo" />
                            </p:column>   
                            <p:column headerText="#{i18n['requerimiento.label.sede']}" >
                                <h:outputText value="#{dto.sedeDto.descripcion}" styleClass="txtCampo" />
                            </p:column>   
                            <p:column headerText="#{i18n['requerimiento.label.prioridad']}" >
                                <h:outputText value="#{dto.prioridadTexto}" styleClass="txtCampo" />
                            </p:column>
                            <p:column style="text-align:left;">
                                <f:facet name="header">
                                    <h:outputText value="#{i18n['requerimiento.label.fecha_creacion']}" />
                                </f:facet>
                                <h:outputText value="#{dto.fechaCreacion}" styleClass="txtCampo" >
                                    <f:convertDateTime pattern="#{applicationMBean.formatoFechaHora}"  timeZone="#{applicationMBean.timeZone}"/> 
                                </h:outputText>                                
                            </p:column>

                            <p:column headerText="#{i18n['requerimiento.label.usuario_creacion']}" >
                                <h:outputText value="#{dto.usuarioCreacionDto.descripcion}" styleClass="txtCampo" />
                            </p:column>
                            <p:column headerText="#{i18n['requerimiento.label.estado']}" >
                                <h:outputText value="#{dto.estadoDto.descripcion}" styleClass="txtCampo" />
                            </p:column>                          

                            <f:facet name="header" >
                                <p:outputPanel style="float: left">   
                                    <p:commandButton title="#{i18n['general.button.nuevo.tip']}" accesskey="#{applicationMBean.keyNuevo}"
                                                     icon="ui-icon ui-icon-plus"
                                                     value="#{i18n['general.button.nuevo']}" 
                                                     style="#{applicationMBean.cssBotonNuevo}"   ajax="false"                                        
                                                     action="#{requerimientoMBean.nuevo}"
                                                     rendered="#{sessionMBean.privilegiosOpciones['252']=='true'}">                                    
                                    </p:commandButton>                            
                                </p:outputPanel>
                            </f:facet>
                        </p:dataTable>
                    </h:panelGrid>
                </p:panel>



            </h:form>
        </ui:define>
    </ui:composition>
</html>
